home *** CD-ROM | disk | FTP | other *** search
/ Micromanía: 150 Juegos 2010 / 150Juegos_16.iso / Shareware / Juegos Flash / canyonZone.dcr / Internal_4_trackManager.ls < prev    next >
Encoding:
Text File  |  2003-08-01  |  5.3 KB  |  205 lines

  1. property pTrackMember, pCollisionMap, pTerrainMap, pHeightMap, pCheckPointManager, pCountDownManager, pDustPuffManager, pSystemManager, pCarManager, pAIManager, pPowerUpManager, pSoundManager, pSpriteManager, pTrack, pCars, pScrollOffset, pShadowMap, pCameraManager, pRaceState, pThingsThatNeedAnUpdate, pThingsThatNeedADisplayUpdate, pThingsThatNeedAPhysicsUpdate, pLastPKeyMS, pMapSprite, pSteppedUntill, pStepSize, pDataHolder, pQuit, pTimeSlicesPassed
  2. global gMainManager
  3.  
  4. on stopRace me
  5.   pCarManager.stopRace()
  6.   pCameraManager.stopRace()
  7.   pSpriteManager.stopRace()
  8.   pSoundManager.stopRace()
  9.   pPowerUpManager.stopRace()
  10.   pCountDownManager.stopRace()
  11.   pDustPuffManager.stopRace()
  12.   pThingsThatNeedAnUpdate = []
  13.   pThingsThatNeedADisplayUpdate = []
  14.   pThingsThatNeedAPhysicsUpdate = []
  15.   return 0
  16. end
  17.  
  18. on new me
  19.   global gDebug1
  20.   pLastPKeyMS = 0
  21.   pThingsThatNeedAnUpdate = []
  22.   pThingsThatNeedADisplayUpdate = []
  23.   pThingsThatNeedAPhysicsUpdate = []
  24.   pSpriteManager = script("spriteManager").new(me)
  25.   pShadowMap = script("shadowmap").new()
  26.   pHeightMap = script("heightmap").new()
  27.   pDustPuffManager = script("dustpuffmanager").new(me)
  28.   pDataHolder = script("dataholder").new(me)
  29.   pAIManager = script("aimanager").new(me)
  30.   pSoundManager = script("soundmanager").new(me)
  31.   pCarManager = script("carManager").new(me)
  32.   pCameraManager = script("cameraManager").new(me)
  33.   pCountDownManager = script("countdownmanager").new(me)
  34.   pCheckPointManager = script("checkpointmanager").new(me)
  35.   pPowerUpManager = script("powerUpManager").new(me)
  36.   pSystemManager = script("systemManager").new(me)
  37.   pScrollOffset = point(0, 0)
  38.   pMapSprite = sprite(10)
  39.   pStepSize = 1000 / 30.0
  40.   gDebug1 = me
  41.   return me
  42. end
  43.  
  44. on start me, tTrack
  45.   global gTrackScale, gTimes, gTimesCount, gFrameCount, gFrameStart
  46.   cursor(200)
  47.   the updateLock = 1
  48.   go("track")
  49.   pTrack = tTrack
  50.   gTrackScale = tTrack[#trackscale]
  51.   pSystemManager.setupTrack(tTrack)
  52.   pAIManager.setupTrack(tTrack)
  53.   pCollisionMap = script("collisionmap").new(tTrack)
  54.   pTerrainMap = script("terrainMap").new(tTrack)
  55.   pSpriteManager.setupTrack(tTrack)
  56.   pShadowMap.setupTrack(tTrack)
  57.   pHeightMap.setupTrack(tTrack)
  58.   pCarManager.setupTrack(tTrack)
  59.   pCameraManager.setupTrack(tTrack)
  60.   pCheckPointManager.setupTrack(tTrack)
  61.   pDustPuffManager.setupTrack(tTrack)
  62.   pCars = pCarManager.getCars()
  63.   pPowerUpManager.setupTrack(tTrack)
  64.   pRaceState = #starting
  65.   pMapSprite.member = tTrack[#trackMember]
  66.   pMapSprite.width = tTrack[#trackMember].width * gTrackScale
  67.   pMapSprite.height = tTrack[#trackMember].height * gTrackScale
  68.   script("tree").new(me, 1.25 * [1144, 692])
  69.   script("tree").new(me, 1.25 * [430, 760])
  70.   the updateLock = 0
  71.   set the stageColor to the stageColor
  72.   pCountDownManager.startCounting()
  73.   pSteppedUntill = the milliSeconds
  74.   gTimes = 0
  75.   gTimesCount = 0
  76.   gFrameCount = 0
  77.   gFrameStart = the milliSeconds
  78.   pQuit = 0
  79. end
  80.  
  81. on leave me
  82.   pSoundManager.leave()
  83. end
  84.  
  85. on Update me, tTimeMultiplier
  86.   if pRaceState = #racing then
  87.     pSteppedUntill = max(pSteppedUntill, the milliSeconds - (4 * pStepSize))
  88.     repeat while pSteppedUntill < the milliSeconds
  89.       call(#stepPhysics, pThingsThatNeedAPhysicsUpdate)
  90.       pSteppedUntill = pSteppedUntill + pStepSize
  91.       pTimeSlicesPassed = pTimeSlicesPassed + 1
  92.     end repeat
  93.   end if
  94.   if pRaceState <> #paused then
  95.     call(#Update, pThingsThatNeedAnUpdate, tTimeMultiplier)
  96.     call(#display, pThingsThatNeedADisplayUpdate, pScrollOffset)
  97.   end if
  98.   if keyPressed("r") then
  99.     pQuit = 1
  100.     t = gMainManager.getManager(#help)
  101.     gMainManager.setManager(t, [#fadeoutspeed: 2, #image: (the stage).image])
  102.   end if
  103.   if keyPressed("p") then
  104.     if pLastPKeyMS < (the milliSeconds - 300) then
  105.       pLastPKeyMS = the milliSeconds
  106.       if pRaceState = #racing then
  107.         pRaceState = #paused
  108.       else
  109.         pRaceState = #racing
  110.         pSteppedUntill = the milliSeconds
  111.       end if
  112.     end if
  113.   end if
  114.   if pQuit then
  115.     me.stopRace()
  116.   end if
  117.   pMapSprite.loc = me.pScrollOffset
  118. end
  119.  
  120. on startRace me
  121.   pRaceState = #racing
  122.   pUpdatedUntil = the milliSeconds
  123.   pTimeSlicesPassed = 0
  124. end
  125.  
  126. on getTimeElapsed me
  127.   return pTimeSlicesPassed * pStepSize
  128. end
  129.  
  130. on INeedAnUpdateEachFrame me, tThing
  131.   pThingsThatNeedAnUpdate.append(tThing)
  132. end
  133.  
  134. on IDontNeedAnUpdateEachFrame me, tThing
  135.   pThingsThatNeedAnUpdate.deleteOne(tThing)
  136. end
  137.  
  138. on INeedADisplayUpdateEachFrame me, tThing
  139.   pThingsThatNeedADisplayUpdate.append(tThing)
  140. end
  141.  
  142. on IDontNeedADisplayUpdateEachFrame me, tThing
  143.   pThingsThatNeedADisplayUpdate.deleteOne(tThing)
  144. end
  145.  
  146. on INeedAPhysicsUpdateEachFrame me, tThing
  147.   pThingsThatNeedAPhysicsUpdate.append(tThing)
  148. end
  149.  
  150. on IDontNeedAPhysicsUpdateEachFrame me, tThing
  151.   pThingsThatNeedAPhysicsUpdate.deleteOne(tThing)
  152. end
  153.  
  154. on getShadowMap me
  155.   return pShadowMap
  156. end
  157.  
  158. on getCollisionMap me
  159.   return pCollisionMap
  160. end
  161.  
  162. on getTerrainMap me
  163.   return pTerrainMap
  164. end
  165.  
  166. on getCheckPointManager me
  167.   return pCheckPointManager
  168. end
  169.  
  170. on getSoundManager me
  171.   return pSoundManager
  172. end
  173.  
  174. on getDataHolder me
  175.   return pDataHolder
  176. end
  177.  
  178. on getSystemManager me
  179.   return pSystemManager
  180. end
  181.  
  182. on getHeightMap me
  183.   return pHeightMap
  184. end
  185.  
  186. on getDustPuffManager me
  187.   return pDustPuffManager
  188. end
  189.  
  190. on getAIManager me
  191.   return pAIManager
  192. end
  193.  
  194. on getCarManager me
  195.   return pCarManager
  196. end
  197.  
  198. on getSpriteManager me
  199.   return pSpriteManager
  200. end
  201.  
  202. on setScrollOffset me, tScrollOffset
  203.   pScrollOffset = tScrollOffset
  204. end
  205.